home *** CD-ROM | disk | FTP | other *** search
/ X User Tools / X User Tools (O'Reilly and Associates)(1994).ISO / sources / xman / sllbylph < prev    next >
Text File  |  1994-09-27  |  3KB  |  88 lines

  1. /*
  2.  * xman - X window system manual page display program.
  3.  *
  4.  * $XConsortium: ScrollByLP.h,v 1.8 91/07/31 22:41:59 keith Exp $
  5.  *
  6.  * Copyright 1987, 1988 Massachusetts Institute of Technology
  7.  *
  8.  * Permission to use, copy, modify, and distribute this software and its
  9.  * documentation for any purpose and without fee is hereby granted, provided
  10.  * that the above copyright notice appear in all copies and that both that
  11.  * copyright notice and this permission notice appear in supporting
  12.  * documentation, and that the name of M.I.T. not be used in advertising or
  13.  * publicity pertaining to distribution of the software without specific,
  14.  * written prior permission.  M.I.T. makes no representations about the
  15.  * suitability of this software for any purpose.  It is provided "as is"
  16.  * without express or implied warranty.
  17.  *
  18.  * Author:    Chris D. Peterson, MIT Project Athena
  19.  * Created:   December 5, 1987
  20.  */
  21.  
  22. #ifndef _XtScrollByLinePrivate_h
  23. #define _XtScrollByLinePrivate_h
  24.  
  25. #include <X11/Xaw/SimpleP.h>
  26.  
  27. #include "ScrollByL.h"
  28.  
  29. /***********************************************************************
  30.  *
  31.  * ScrollByLine Widget Private Data
  32.  *
  33.  ***********************************************************************/
  34.  
  35. /* New fields for the ScrollByLine widget class record */
  36. typedef struct {
  37.      int mumble;   /* No new procedures */
  38. } ScrollByLineClassPart;
  39.  
  40. /* Full class record declaration */
  41. typedef struct _ScrollByLineClassRec {
  42.     CoreClassPart      core_class;
  43.     SimpleClassPart       simple_class;
  44.     ScrollByLineClassPart scrolled_widget_class;
  45. } ScrollByLineClassRec;
  46.  
  47. extern ScrollByLineClassRec scrollByLineClassRec;
  48.  
  49. /* New fields for the ScrollByLine widget record */
  50. typedef struct _ScrollByLinePart {
  51.   Pixel foreground;        /* The color for the forground of the text. */
  52.   Boolean force_vert,        /* Must have scrollbar visable */
  53.     use_right;            /* put scroll bar on right side of window. */
  54.   FILE * file;            /* The file to display. */
  55.   Dimension indent;        /* amount to indent the file. */
  56.   XFontStruct * bold_font,    /* The four fonts. */
  57.     * normal_font,
  58.     * italic_font,
  59.     * symbol_font;
  60.   
  61. /* variables not in resource list. */
  62.  
  63.   Widget bar;            /* The scrollbar. */
  64.   int font_height;        /* the height of the font. */
  65.   int line_pointer;        /* The line that currently is at the top 
  66.                    of the window being displayed. */
  67.   Dimension offset;        /* Drawing offset because of scrollbar. */
  68.   GC move_gc;            /* GC to use when moving the text. */
  69.   GC bold_gc, normal_gc, italic_gc, symbol_gc; /* gc for drawing. */
  70.  
  71.   char ** top_line;        /* The top line of the file. */
  72.   int lines;            /* number of line in the file. */
  73. } ScrollByLinePart;
  74.  
  75. /****************************************************************
  76.  *
  77.  * Full instance record declaration
  78.  *
  79.  ****************************************************************/
  80.  
  81. typedef struct _ScrollByLineRec {
  82.     CorePart          core;
  83.     SimplePart        simple;
  84.     ScrollByLinePart  scroll;
  85. } ScrollByLineRec;
  86.  
  87. #endif /* _XtScrollByLinePrivate_h --- DON'T ADD STUFF AFTER THIS LINE */
  88.